package org.particlethink.request;

import io.swagger.v3.oas.annotations.media.Schema;
import org.particlethink.model.BatchPlan;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.List;

public class CreateBillRequest {
    @Schema(description = "对账单编号")
    private String no;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Schema(description = "对账周期开始时间")
    private Date startAt;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Schema(description = "对账周期结束时间")
    private Date endAt;

    @Schema(description = "供应商id")
    private Integer supplierId;

    @Schema(description = "扣款金额")
    private Float deductionAmount; //扣款金额
    @Schema(description = "扣款事由")
    private String deductionReason;// 扣款事由
    @Schema(description = "奖励金额")
    private Float rewardAmount; //  奖励金额
    @Schema(description = "奖励事由")
    private String rewardReason;//  奖励事由
    @Schema(description = "发货单id")
    private List<Integer> deliverIds;

    public String getNo() {
        return no;
    }

    public void setNo(String no) {
        this.no = no;
    }

    public Date getStartAt() {
        return startAt;
    }

    public void setStartAt(Date startAt) {
        this.startAt = startAt;
    }

    public Date getEndAt() {
        return endAt;
    }

    public void setEndAt(Date endAt) {
        this.endAt = endAt;
    }



    public String getDeductionReason() {
        return deductionReason;
    }

    public void setDeductionReason(String deductionReason) {
        this.deductionReason = deductionReason;
    }


    public String getRewardReason() {
        return rewardReason;
    }

    public void setRewardReason(String rewardReason) {
        this.rewardReason = rewardReason;
    }

    public List<Integer> getDeliverIds() {
        return deliverIds;
    }

    public void setDeliverIds(List<Integer> deliverIds) {
        this.deliverIds = deliverIds;
    }

    public Integer getSupplierId() {
        return supplierId;
    }

    public void setSupplierId(Integer supplierId) {
        this.supplierId = supplierId;
    }

    public Float getDeductionAmount() {
        return deductionAmount;
    }

    public void setDeductionAmount(Float deductionAmount) {
        this.deductionAmount = deductionAmount;
    }

    public Float getRewardAmount() {
        return rewardAmount;
    }

    public void setRewardAmount(Float rewardAmount) {
        this.rewardAmount = rewardAmount;
    }

    public static class Request {
        private List<CreateBillRequest> data;

        public List<CreateBillRequest> getData() {
            return data;
        }

        public void setData(List<CreateBillRequest> data) {
            this.data = data;
        }
    }
}
